import { nanoid } from 'nanoid'
import axios from 'axios';
export default {
    namespaced:true,
    actions:{
     addPersonWang(context,value){
         if(value.name.indexOf("王") ===0){
             context.commit("ADD_PERSON_WANG",value)
         }else{
             alert("只能添加姓王的人!");
         }
     },
     addPersonServer(context){
        axios.get("https://api.uixsj.cn/hitokoto/get?type=social").then(
            response =>{
                context.commit("ADD_PERSON",{id:nanoid(),name:response.data})
            },
            error=>{
                alert(error.message)
            }
        )
     }
    },
    // 准备mutations 用于操作数据 state
    mutations :{
        ADD_PERSON(state,value){
            state.personList.unshift(value);
        },
        ADD_PERSON_WANG(state,value){
         state.personList.unshift(value);
     }
    },
    // 准备state 用于存储数据
    state :{
        personList:[{id:nanoid(),name:"张三"}]
    },
    //对state数据 针对逻辑复杂的进行计算 有点类似于 computed,对于commuted可以跨组件复用
    getters:{
     firstPersonName(state){
         return state.personList[0].name;
     }
 }
 }